package com.sg.dto.biz.framework.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;


/**
 * @desc AddRoleReqDto
 * @使用场景
 */
@Data
public class AddRoleReqDto extends BaseDto implements Serializable {

    /**
     * 角色标识
     */
    @NotNull(message = "角色标识不能为空")
    @ApiModelProperty("角色标识")
    private String roleCode;

    /**
     * 角色名称
     */
    @NotNull(message = "角色名称不能为空")
    @ApiModelProperty("角色名称")
    private String roleName;

    /**
     * 角色介绍
     */
    @ApiModelProperty("角色介绍")
    private String roleRemark;

    /**
     * 角色图标
     */
    @ApiModelProperty("角色图标")
    private String roleLogo;

    /**
     * 角色类型 SYSTERM_ROLE:系统角色 BUSINESS_ROLE:业务角色
     */
    @NotNull(message = "角色类型不能为空")
    @ApiModelProperty("角色类型")
    private String roleType;

    /**
     * 宿主类型ID
     */
    @NotNull(message = "宿主类型ID不能为空")
    @ApiModelProperty("宿主类型ID")
    private String hostTypeId;

    /**
     * 是否身份角色 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否身份角色不能为空")
    @ApiModelProperty("是否身份角色")
    private String isIdentity;

    /**
     * 是否手动创建 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否手动创建不能为空")
    @ApiModelProperty("是否手动创建")
    private String automaticCreation;

    /**
     * 是否平台数据 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否平台数据不能为空")
    @ApiModelProperty("是否平台数据")
    private String platformData;

    /**
     * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
     */
    @NotNull(message = "主体生命周期不能为空")
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;


}
   